home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 11 Exotic Applications / C64S9C.ZIP / C64S.DOC next >
Encoding:
Text File  |  1994-01-01  |  11.9 KB  |  372 lines

  1.  
  2.  
  3.               C64S - Commodore 64 Software Emulator
  4.               Shareware verison 0.9B, November 1993
  5.                   (C) 1991,92,93 Miha Peternel
  6.                                 
  7.                                 
  8.                                 
  9.                           USER'S MANUAL
  10.                                 
  11.  
  12.  
  13.                        ___________________
  14.                          1. INTRODUCTION
  15.                                 
  16.  
  17. Welcome to a new emulator of the good old fat C64. It will allow
  18. you to run most of the original C64 software on your PC.
  19.  
  20. This version is SHAREWARE. It is free for personal use, but if
  21. you want a perfect version of the emulator, you will need to
  22. register.
  23.  
  24. Minimum configuration:
  25. - 386 or higher (286 in the demo version only)
  26. - 640K RAM
  27. - VGA display (register compatible)
  28. - DOS 3.3 (lower not tested)
  29.  
  30. Optional:
  31. - a soundcard:
  32.   Gravis UltraSound
  33.   Sound Blaster (all versions)
  34.   Covox or compatible DAC (digital to analog converter)
  35. - analog PC joystick
  36. - tape interface (supported in registered version)
  37. - disk 1541 interface (supported in registered version)
  38.  
  39. You need at least a 386DX40 with a fast VGA for real time
  40. emulation. A soundcard is recommended, though the sound can also
  41. be played through PC speaker (at rather low quality).
  42.  
  43.  
  44.  
  45.                         ________________
  46.                           2. IN ACTION
  47.                                 
  48.  
  49. The emulator emulates all the components of C64 needed to make
  50. the programs run correctly, display genuine graphics, synthesize
  51. music, and emulate I/O operations.
  52.  
  53. The keyboard layout is original C64 with some exceptions due to
  54. different PC layout.
  55.  
  56. Some special emulator features make the work with the emulator
  57. easier. The tapes and disks to be used with the emulator are
  58. stored in a special format in image files on the hard disk. You
  59. can select the tape position or a disk in the selection screen.
  60. Emulation settings can be changed in the option screen.
  61.  
  62. The following keys have special meaning:
  63. - F8 enters option screen
  64. - F9 enters selection screen
  65. - F10 turns emulation of both joystick ports on
  66. - ALT+F10 recalibrates analog joysticks
  67. - ESC exits emulator screens
  68. - CTRL+BREAK exits the emulator
  69. - CTRL+ALT+DEL or CTRL+ALT+BackSpace emulate reset
  70. - CTRL+ALT+INS causes brutal reset (for reset-protected programs)
  71.  
  72. Table of replaced keys with their equivalents:
  73. - F1/F2..F7/F8      F1..F4  (will be changed to F1..F8)
  74. - C=                Alt
  75. - Ins/Del           BackSpace
  76. - Clr/Home          Home
  77. - £                 Insert
  78. -                  Delete
  79. - Run/Stop          Tab
  80. - Restore           F12
  81.  
  82. Keys used for joystick emulation:
  83. - Port A (2):
  84.      W    up
  85.      S    down
  86.      U    left
  87.      I    right
  88.      O    fire
  89. - Port B (1): (numeric keys)
  90.      7    up
  91.      4    down
  92.      8    left
  93.      9    right
  94.      +    fire
  95.  
  96.  
  97.                     ________________________
  98.                       3. FOR THE BEGINNERS
  99.                                 
  100.  
  101. Emulator exists of two executables:
  102. - C64S     (for 386 and higher)
  103. - C64S286  (for 286 and higher)
  104. Run C64S286 only if you have a 286.
  105.  
  106. The following options can be used on the command line when you
  107. run the emulator:
  108. 1. SOUND options:
  109.    -s0  for no sound output (default)
  110.    -su  for Gravis UltraSound (220)
  111.    -sb  for Sound Blaster (220)
  112.    -sd  for DAC at LPT1 (278)
  113.    -sp  for PC speaker (042)
  114. If your soundcard is set to a nonstandard base address, you need
  115. to specify it with the sound option on the command line.
  116. Example: If your Gravis UltraSound card is set to base port
  117. address 240, use -su240 on the command line. LPT base addresses
  118. for DAC are 278 (LPT1), 378 (LPT2) and 3BC (LPT3). You may use a
  119. different address if you are not using LPT DAC.
  120. 2. JOYSTICK options:
  121.    -j0  for no analog joystick (default)
  122.    -j1  for one analog joystick
  123.    -j2  for two analog joysticks
  124. If you want to use analog joystick, you need to recalibrate it by
  125. pressing ALT-F10 in the emulator. Joystick must be centered when
  126. pressing ALT-F10 in order to recalibrate it correctly. The
  127. information will be saved to configuration file for later use.
  128.  
  129. The options specified on the command line will be written to the
  130. configuration file so you don't need to rewrite them the next
  131. time you run the emulator. You only need to specify them when you
  132. reconfigure your computer or when you want to force different
  133. functionality of the emulator.
  134.  
  135. Fast intro:
  136. 1. Run the emulator with appropriate options (described above).
  137. 2. If you use analog joystick, center it and press ALT+F10 to
  138. recalibrate it.
  139. 3. Press F9 to get to the selection screen, select a tape with
  140. cursor keys and confirm with Enter, select a file and again
  141. confirm with Enter. The tape pointer will now point to selected
  142. tape and file and you will be returned to the C64 screen.
  143. 4. Press SHIFT+TAB (SHIFT+RUN/STOP), which will load a tape
  144. program and run it automatically.
  145. 5. Press F10 to turn joystick emulation on.
  146. 6. Enjoy the nostalgia. :)
  147. 7. You can always press F8 to enter option screen, where you can
  148. adjust some parameters to make the emulation at you computer's
  149. speed more acceptable. It is especially important to play with
  150. the raster and refresh speeds if you want to reproduce rhythmic
  151. music.
  152.  
  153. Pressing F9 in the selection screen will switch between tape and
  154. disk indexes. Selecting a disk and pressing Enter works just the
  155. same as if you put a new diskette into the floppy drive. By
  156. default the emulator will read TESTDISK.D64. Be careful if the
  157. program writes to disk, because it can damage the contents of the
  158. disk you switch to when writing.
  159.  
  160. Using 1541 drive operates in the original way. The CBM DOS
  161. commands (except format) work, too. Write LOAD"$",8,1 to load
  162. directory, LIST to see it, LOAD"prg name",8 to load a program
  163. (you may use wildcards) and RUN to start it. To load a file to
  164. its original address, you need to use LOAD"prg name",8,1. Run a
  165. machine code program writing SYS xxxx, where xxxx is the program
  166. entry address (decimal). VIC 20 emulator is loaded by writing
  167. LOAD"VIC*",8,1 and started with SYS49152.
  168.  
  169. The emulator will always scan its directory for .T64 and .D64
  170. files. If you add new files to the emulator's directory, they
  171. will automatically appear in the corresponding selection screen.
  172. * The emulator does not support changing directories yet. All its
  173. files need to be in the same directory.
  174.  
  175. Emulating C64 in all aspects also means you can find yourself in
  176. the same trouble as you were using a real C64 if something went
  177. wrong, moving joystick or pressing fire will dump characters to
  178. screen, per example.
  179.  
  180. You also need to think about the emulator's features. Turning
  181. keyboard joystick emulation on means that used keys won't work
  182. like they should if you try to write text. You need to turn
  183. joystick emulation off (in the option screen).
  184.  
  185. If you have difficulties using analog joystick, press ALT-F10 to
  186. recalibrate it.
  187.  
  188. Sometimes when a single analog joystick emulates both joystick
  189. ports it may appear that the game doesn't recognize some joystick
  190. directions (like in Green Beret). The problem is easily solved by
  191. assigning analog joystick port emulation to one port only.
  192.  
  193.  
  194.  
  195.                       ____________________
  196.                         4. COMPATIBILITY
  197.                                 
  198.  
  199. The following is the compatibility list.
  200. + means implemented and compatible
  201. - means not implemented or not compatible
  202. * means planned in the future
  203.  
  204.  
  205.   CPU
  206.  
  207. + 6510 documented instruction set (JMP (indirect) fixed)
  208. * 6510 undocumented instructions only partially implemented
  209. + $01 memory banking
  210. + flags (not 100% compatible in decimal operations)
  211. * cycle counts
  212.  
  213.  
  214.   VIC
  215.  
  216. + all graphic modes
  217. + black screen
  218. + sprites
  219. + sprite to background priority
  220. + sprite to background collision
  221. - sprite to sprite collision buggy
  222. + raster interrupts
  223. + multiplied sprites
  224. + hardware scroll
  225. + bad line scroll
  226. + shrunk screen
  227. + 8 line update
  228. * line by line update
  229. * forced DMA
  230. * character line redraw
  231. * border and border tricks in X-mode
  232. * cycle exact screen changes
  233.  
  234.  
  235.   SID
  236.  
  237. + 3 channels
  238. + 8 bit sampled original waveforms
  239. + ADSR envelope control
  240. + master volume control
  241. + pulse width modulation
  242. - no channel to channel effects
  243. - no filters
  244. * filtered waveforms may be implemented on GUS
  245.  
  246.  
  247.   CIA 1
  248.  
  249. + keyboard emulation (still needs improvements)
  250. + joystick emulation
  251. + timer A (real time)
  252. - timer B
  253. * time of day (partially implemented)
  254. - serial port
  255. + IRQ control
  256. * rebindable keyboard
  257.  
  258.  
  259.   CIA 2
  260.  
  261. + VIC bank select
  262. - other features not implemented
  263.  
  264.  
  265.   1541
  266.  
  267. + ROM level emulation (16K RAM & I/O + 16K ROM)
  268. + supports CBM DOS commands except format
  269. + fast (ROM trapped) C64 to 1541 connection
  270. + image file operation
  271. - protection support (GCR coding)
  272. * real 1541 connection
  273. * improved (GCR coded) image file format
  274. * fast loader support
  275. * PC side full disk transfer utilities
  276.  
  277.  
  278.   TAPE
  279.  
  280. + ROM trapped tape routines
  281. + tape image files with directory
  282. + ultra fast loading
  283. + Turbo Tape loader for PC tape connector
  284. + MakeTape utilities
  285. * built-in tape tools for comfortable tape image manipulation
  286. * SB and GUS versions of Turbo Tape loader
  287.  
  288.  
  289.  
  290.                       _____________________
  291.                         5. FILE TRANSFERS
  292.                                 
  293.  
  294. Tape files in the Turbo Tape format are the easiest to transfer
  295. using my PC loader. The connector scheme is simple and will be
  296. published together with the loader in the registered version.
  297.  
  298. IMPORTANT !
  299.  
  300. Since all beta tester haven't got my MakeTape utility, a utility
  301. named CONV64 has appeared, which creates FALSE .T64 files. The
  302. start and end address are not set correctly, that's why many
  303. compressed programs refused to work. Please use MakeTape for best
  304. results. There's also a C source included in case someone would
  305. like to tailor it to his/her needs.
  306.  
  307. Disk files are possible to be transferred using X1541 program and
  308. a special 1541 to LPT cable. All the required schemes are a part
  309. of X1541. The files transferred in this way can be converted to
  310. tape files with MakeTape program or (if the whole disk contents
  311. is transferred) used as a disk image.
  312.  
  313. I'll also support this type of 1541 connection in the registered
  314. version of my emulator.
  315.  
  316.  
  317.  
  318.                         ________________
  319.                           6. UTILITIES
  320.                                 
  321.  
  322. The following utilities are planned to go with the emulator:
  323. - built-in debugger
  324. - Turbo Tape loader with support for SB and GUS inputs
  325. - MakeTape formatter / importer / exporter
  326. - 1541 disk transfer utility
  327. - MakeDisk formatter / importer / exporter
  328. - 6510 Cross Assembler
  329.  
  330.  
  331.  
  332.                          ______________
  333.                            7. RELEASE
  334.                                 
  335.  
  336. The 1.0 release won't be ready in November, because I have
  337. decided (with a lot of help from beta testers) to add a long list
  338. of features not planned previously, not to mention the university
  339. after all. Please understand that the emulator is written in 100%
  340. assembler, which makes me write the code very carefully in order
  341. to avoid bugs and allow further enhancements. I also wish I had
  342. more time to answer all the mail and email I receive.
  343.  
  344. IMPORTANT !
  345.  
  346. Please DO NOT register the emulator until I announce V 1.0 is
  347. ready. I may arrange the registered version to be distributed by
  348. a software distributing company in which case it could also be
  349. shipped with special cables needed for 1541 and tape connection.
  350.  
  351.  
  352.  
  353.                          _______________
  354.                            8. CONTACTS
  355.                                 
  356.  
  357. E-mail:
  358.   miha@rsc3.hermes.si (slow reception, fast reply)
  359.   miha.peternel@abm.gn.apc.org (fast reception, slow reply)
  360. E-mail messages to both addresses if possible.
  361.  
  362. Phone:
  363.   +386-64-311-959 (fax/modem on demand)
  364.   (How come this number reminds me of something ?)
  365.  
  366. Snail mail:
  367.   Miha Peternel (for C64S)
  368.   Pot v Bitnje 66
  369.   64000 Kranj
  370.   Slovenia, Europe
  371.  
  372.